High performance network fabric switches are utilized in networking environment to provide switching functionality for high performance computing and/or enterprise data centers. One type of such a high performance fabric switch is an Infiniband network fabric switch. For example, an Infiniband fabric switch may provide up to 100 Gbit/s switching on 42 input/output ports. The fabric switch provides switching capabilities to a network to spread traffic on the network across multiple physical links between the components of the network.
The performance of an Infiniband switch may depend on the switching efficiency of the switch and the arbitration time required to switch between ports. In general, the faster that the fabric switch reliably processes the data received at the switch, the higher the performance of the switch. To ensure that each data packet received by the switch is transmitted out of the correct output port of the switch, many switches utilize what is known as virtual output queues (VOQ). A VOQ is a queuing scheme for the input ports of the switch. Each input port to the switch may maintain a VOQ for each output of the switch, or virtual lane (VL) of the output ports of the switch. The VOQ scheme is typically able to provide a high speed mapping of packets from inputs to outputs on a cycle-by-cycle basis. However, to meet the high throughput and low latency requirements of a high-performance switch, the VOQ management scheme for such a switch often times has negative implications on the overall system power consumption and valuable chip area.
It is with these and other issues in mind that various aspects of the present disclosure were developed.